title: “Estado del COVID-19 en Costa Rica (alberto salazar)” output: flexdashboard::flex_dashboard: orientation: rows # social: menu # source_code: embed vertical_layout: fill
—
valueBox(value = paste(format(df_general_pais_ultima_fecha$positivos, big.mark = ","), "", sep = " "),
caption = "Total de casos positivos",
icon = icono_positivos,
color = color_positivos
)
125,590
valueBox(value = paste(format(df_general_pais_ultima_fecha$activos, big.mark = ","), " (",
round(100 * df_general_pais_ultima_fecha$activos / df_general_pais_ultima_fecha$positivos, 1),
"%)", sep = ""),
caption = "Total de casos activos",
icon = icono_activos,
color = color_activos
)
46,454 (37%)
valueBox(value = paste(format(df_general_pais_ultima_fecha$RECUPERADOS, big.mark = ","), " (",
round(100 * df_general_pais_ultima_fecha$RECUPERADOS / df_general_pais_ultima_fecha$positivos, 1),
"%)", sep = ""),
caption = "Total de casos recuperados",
icon = icono_recuperados,
color = color_recuperados
)
77,558 (61.8%)
valueBox(value = paste(format(df_general_pais_ultima_fecha$fallecidos, big.mark = ","), " (",
round(100 * df_general_pais_ultima_fecha$fallecidos / df_general_pais_ultima_fecha$positivos, 1),
"%)", sep = ""),
caption = "Total de casos fallecidos",
icon = icono_fallecidos,
color = color_fallecidos
)
1,578 (1.3%)
valueBox(value = paste(format(df_general_pais_ultima_fecha$hospital, big.mark = ","), "", sep = " "),
caption = "Total de hospitalizados",
icon = icono_hospitalizados,
color = color_hospitalizados
)
514
valueBox(value = paste(format(df_general_pais_ultima_fecha$salon, big.mark = ","), " (",
round(100 * df_general_pais_ultima_fecha$salon / df_general_pais_ultima_fecha$hospital, 1),
"%)", sep = ""),
caption = "Hospitalizados en salón",
icon = icono_salon,
color = color_salon
)
293 (57%)
rate <- (100/359)*df_general_pais_ultima_fecha$UCI
gauge(rate, min = 0, max = 359, symbol = '', gaugeSectors(
success = c(0, 199), warning = c(200, 299), danger = c(300, 359)
))
df_general_distritos_ultima_fecha %>%
select(Provincia = provincia, Canton = canton, Distrito = distrito, Positivos = positivos, Recuperados = recuperados, Fallecidos = fallecidos, Activos = activos) %>%
DT::datatable(rownames = FALSE,
options = list(searchHighlight = TRUE,
language = list(url = '//cdn.datatables.net/plug-ins/1.10.11/i18n/Spanish.json')
)
)
valueBox(value = paste(format(df_general_pais_ultima_fecha$positivos, big.mark = ","), "", sep = " "),
caption = "Total de casos positivos",
icon = icono_positivos,
color = color_positivos
)
125,590
paleta_azul <- colorBin(palette = "Blues",
domain = sf_general_distritos_ultima_fecha$positivos,
bins = 10
)
leaflet_cantones <- leaflet(sf_general_distritos_ultima_fecha) %>%
fitBounds(lng1 = -86, lng2 = -82, lat1 = 8, lat2 = 11) %>%
addProviderTiles(providers$OpenStreetMap.Mapnik, group = "OpenStreetMap") %>%
addPolygons(fillColor = ~paleta_azul(positivos), stroke=T, fillOpacity = 1,
color="black", weight=0.2, opacity= 0.5,
group = "Distritos",
popup = paste("Provincia: ", sf_general_distritos_ultima_fecha$provincia, "<br>",
"Cantón: ", sf_general_distritos_ultima_fecha$canton, "<br>",
"Distrito: ", sf_general_distritos_ultima_fecha$distrito, "<br>",
"Positivos: ", sf_general_distritos_ultima_fecha$positivos
)
) %>%
addLegend("bottomright", pal = paleta_azul, values = ~positivos,
title = "Casos positivos",
opacity = 1
) %>%
addLayersControl(
baseGroups = c("OpenStreetMap"),
overlayGroups = c("Distritos"),
options = layersControlOptions(collapsed = TRUE)
) %>%
addScaleBar() %>%
addMiniMap(
toggleDisplay = TRUE,
position = "bottomleft",
tiles = providers$OpenStreetMap.Mapnik
)
## Warning in RColorBrewer::brewer.pal(max(3, n), palette): n too large, allowed maximum for palette Blues is 9
## Returning the palette you asked for with that many colors
## Warning in RColorBrewer::brewer.pal(max(3, n), palette): n too large, allowed maximum for palette Blues is 9
## Returning the palette you asked for with that many colors
# Despliegue del mapa
leaflet_cantones
plot_ly(datos,
labels = ~ distrito,
values = ~ positivos,
type = "pie",
textinfo = "percent",
textposition = '',
marker = list(color = color_positivos)
) %>%
layout(title = "10 distritos con más casos positivos") %>%
config(locale = "es")
## Warning: `arrange_()` is deprecated as of dplyr 0.7.0.
## Please use `arrange()` instead.
## See vignette('programming') for more help
## This warning is displayed once every 8 hours.
## Call `lifecycle::last_warnings()` to see where this warning was generated.
valueBox(value = paste(format(df_general_pais_ultima_fecha$activos, big.mark = ","), "", sep = " "),
caption = "Total de casos activos",
icon = icono_activos,
color = color_activos
)
46,454
# Cálculo de centroides de los distritos
sf_distritos_centroides = st_centroid(sf_general_distritos_ultima_fecha, of_largest_polygon = FALSE)
## Warning in st_centroid.sf(sf_general_distritos_ultima_fecha, of_largest_polygon
## = FALSE): st_centroid assumes attributes are constant over geometries of x
## Warning in st_centroid.sfc(st_geometry(x), of_largest_polygon =
## of_largest_polygon): st_centroid does not give correct centroids for longitude/
## latitude data
# Separación de los datos de longitud y latitud en columnas distintas
separated_coord <- sf_distritos_centroides %>%
mutate(long = unlist(map(sf_distritos_centroides$geometry,1)),
lat = unlist(map(sf_distritos_centroides$geometry,2))
)
# Mapa de calor
leaflet() %>%
fitBounds(lng1 = -86, lng2 = -82, lat1 = 8, lat2 = 11) %>%
addProviderTiles(providers$Stamen.TonerLite, group = "Stamen Toner Lite") %>%
addProviderTiles(providers$CartoDB.DarkMatter, group = "CartoDB DarkMatter") %>%
addProviderTiles(providers$OpenStreetMap.Mapnik, group = "OpenStreetMap") %>%
addPolygons(
data = sf_general_distritos_ultima_fecha,
stroke=T, fillOpacity = 0,
color="black", weight=0.2, opacity= 1.0,
group = "Distritos",
popup = paste(
"Provincia: ", sf_general_distritos_ultima_fecha$provincia, "<br>",
"Cantón: ", sf_general_distritos_ultima_fecha$canton, "<br>",
"Distrito: ", sf_general_distritos_ultima_fecha$distrito, "<br>",
"Casos positivos: ", sf_general_distritos_ultima_fecha$positivos, "<br>",
"Casos activos: ", sf_general_distritos_ultima_fecha$activos, "<br>",
"Casos recuperados: ", sf_general_distritos_ultima_fecha$recuperados, "<br>",
"Casos fallecidos: ", sf_general_distritos_ultima_fecha$fallecidos
)
) %>%
addHeatmap(
data = separated_coord,
lng = ~long, lat = ~lat, intensity = ~positivos,
blur = 10, max = 5423, radius = 15,
group = "Casos positivos"
) %>%
addHeatmap(
data = separated_coord,
lng = ~long, lat = ~lat, intensity = ~activos,
blur = 10, max = 1106, radius = 15,
group = "Casos activos"
) %>%
addHeatmap(
data = separated_coord,
lng = ~long, lat = ~lat, intensity = ~recuperados,
blur = 10, max = 4837, radius = 15,
group = "Casos recuperados"
) %>%
addHeatmap(
data = separated_coord,
lng = ~long, lat = ~lat, intensity = ~fallecidos,
blur = 10, max = 54, radius = 15,
group = "Casos fallecidos"
) %>%
addLayersControl(
baseGroups = c("Stamen Toner Lite", "CartoDB DarkMatter", "OpenStreetMap"),
overlayGroups = c("Distritos", "Casos positivos", "Casos activos", "Casos recuperados", "Casos fallecidos"),
options = layersControlOptions(collapsed = TRUE)
) %>%
addScaleBar() %>%
hideGroup("Distritos") %>%
hideGroup("Casos activos") %>%
hideGroup("Casos recuperados") %>%
hideGroup("Casos fallecidos")